; > Def

; New keyboard protocols

; Keyboard -> ARM

K1mdat  * &00           ; 0xxx xxxx     Mouse data from keyboard
K1kbid  * &80           ; 10xx xxxx     Keyboard ID from keyboard
K1kdda  * &C0           ; 1100 xxxx     Key down data
K1kuda  * &D0           ; 1101 xxxx     Key up data
K1pdat  * &E0           ; 1110 xxxx     SPD data from keyboard
K1rak2  * &FD           ; 1111 1101     Reset acknowledge 2
K1rak1  * &FE           ; 1111 1110     Reset acknowledge 1
K1hrst  * &FF           ; 1111 1111     Hard reset

K1kbidmask * &3F        ; 0011 1111     Valid bits in keyboard id

K1notmousedata * &80

; ARM -> Keyboard

K1leds  * &00           ; 0000 0xxx     Set LED states
K1rqid  * &20           ; 0010 0000     Request keyboard id
K1prst  * &21           ; 0010 0001     SPD reset
K1rqmp  * &22           ; 0010 0010     Request mouse position
K1nack  * &30           ; 0011 0000     Acknowledge (keys- mouse-)
K1sack  * &31           ; 0011 0001     Acknowledge (keys+ mouse-)
K1mack  * &32           ; 0011 0010     Acknowledge (keys- mouse+)
K1smak  * &33           ; 0011 0011     Acknowledge (keys+ mouse+)
K1back  * &3F           ; 0011 1111     Byte acknowledge (between 2 data bytes)
K1rqpd  * &40           ; 0100 xxxx     Request SPD data conversion

        END
